VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "ParametricSaddlSym"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Attribute VB_Ext_KEY = "SP3DEqpUSSClassType" ,"SYM"
Attribute VB_Ext_KEY = "SP3DV6UpgradeSO" ,"Upgraded by Eqp SO Upgrade Wizard at 11/29/2004-5:09:44 AM"
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
'
'   Copyright (c) 2006, Intergraph Corporation. All rights reserved.
'
'   ParametricSaddlSym.cls
'   ProgID:         SP3DParSaddleCompAsm.ParametricSaddlSym
'   Author:         svsmylav
'   Creation Date:  Friday, May 9, 2003
'
'   This is a Vessel Saddle Support for 1.2 mts to 3 mts Dia Vessels.
'   This symbol consists of 13 inputs and 12 outputs  and It has two aspects one is Simple Physical
'   another is ReferenceGeometry. Among them 9 are physical and 3 are ReferenceGeometry.
'   This is a Dow Equipment symbol.
'
'   Change History:
'   dd.mmm.yyyy     who                     change description
'   -----------     ---                     ------------------
'   1.Aug.2006      svsmylav                CR-89878 Removed reference to Dow Emetl Standards (replaced existing symbol).
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Option Explicit

Private Const MODULE = "ParametricSaddlSym:"  'Used for error messages

Private m_oSymbolHelper As IJSymbolHelper
    
' Declaration of the User Symbol Services interface
Implements IJDUserSymbolServices


Private Sub Class_Initialize()
    
    Const METHOD = "Class_Initialize:"
    On Error GoTo ErrorHandler
    
    Set m_oSymbolHelper = New SymbolServices
    m_oSymbolHelper.ProjectName = "SP3DParSaddleCompAsm"
    m_oSymbolHelper.ClassName = "ParametricSaddlSym"
    
' Inputs
    m_oSymbolHelper.NumInputs = 13
    m_oSymbolHelper.AddInputDef 1, "VesselDiameter", "Vessel Diameter", 1.3
    m_oSymbolHelper.AddInputDef 2, "SupportLength", "Support Length(B)", 1.13
    m_oSymbolHelper.AddInputDef 3, "SupportHeight", "Support Height From Vessel Center to base of saddle", 1.62
    m_oSymbolHelper.AddInputDef 4, "SupportWidth", "Support Width(G)", 0.25
    m_oSymbolHelper.AddInputDef 5, "CPtoSaddle", "Distance of saddle center from the CP of vessel", 1.016
    m_oSymbolHelper.AddInputDef 6, "BasePlateThickness", "Base Plate Thickness(E)", 0.016
    m_oSymbolHelper.AddInputDef 7, "BackingPlateThickness", "Backing Plate Thickness(T)", 0.012
    m_oSymbolHelper.AddInputDef 8, "BackingPlateWidth", "Backing Plate Widt(H)", 0.5
    m_oSymbolHelper.AddInputDef 9, "StiffnerThickness", "Stiffner Thickness(D)", 0.016
    m_oSymbolHelper.AddInputDef 10, "StiffnerThickness1", "Stiffner Thickness(DG)", 0.012
    m_oSymbolHelper.AddInputDef 11, "StiffnerSpacing", "Stiffner Spacing(C)", 0.75
    m_oSymbolHelper.AddInputDef 12, "XboltHole", "Bolt Hole Location-X (F)", 0.07
    m_oSymbolHelper.AddInputDef 13, "YboltHole", "Bolt Hole Location-Y (A)", 0.95
    
' Outputs
    m_oSymbolHelper.NumOutputs = 12
    m_oSymbolHelper.AddOutputDef 1, "SaddlePlate", "Saddle Body", SimplePhysical
    m_oSymbolHelper.AddOutputDef 2, "StiffnerPlate", "Ends Support Plate", SimplePhysical
    m_oSymbolHelper.AddOutputDef 3, "BackingPlate1", "Center Support Plate1", SimplePhysical
    m_oSymbolHelper.AddOutputDef 4, "BackingPlate2", "Center Support Plate2", SimplePhysical
    m_oSymbolHelper.AddOutputDef 5, "BackingPlate3", "Middle Support Plate", SimplePhysical
    m_oSymbolHelper.AddOutputDef 6, "BackingPlate4", "Center Support Plate3", SimplePhysical
    m_oSymbolHelper.AddOutputDef 7, "BackingPlate5", "Center Support Plate4", SimplePhysical
    m_oSymbolHelper.AddOutputDef 8, "BackingPlate6", "Bottom Support Plate", SimplePhysical
    m_oSymbolHelper.AddOutputDef 9, "FoundationPort", "Foundation Port", SimplePhysical
    m_oSymbolHelper.AddOutputDef 10, "DefaultSurface", "Reference Surface at the bottom of vessel", ReferenceGeometry
    m_oSymbolHelper.AddOutputDef 11, "VesselAxisLine", "Reference Line passes through center of Vessel", ReferenceGeometry
    m_oSymbolHelper.AddOutputDef 12, "VesselAxisPoint", "Reference Point on axis of vessel at Support height", ReferenceGeometry
   

' Aspects
    m_oSymbolHelper.NumAspects = 2
    m_oSymbolHelper.AddAspectDef 1, "SimplePhysical", "PipingAspect Description", SimplePhysical
    m_oSymbolHelper.AddAspectDef 2, "ReferenceGeometry", "ReferenceGeometry", ReferenceGeometry
    
    Exit Sub
    
ErrorHandler:
   Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
    Err.HelpFile, Err.HelpContext

End Sub

Private Sub Class_Terminate()
    Set m_oSymbolHelper = Nothing
End Sub

' note that the rest of the code is generated by the Symbol Wizard and should not need to be modified
Public Function IJDUserSymbolServices_InstanciateDefinition( _
                ByVal CodeBase As String, _
                ByVal defParameters As Variant, _
                ByVal ActiveConnection As Object) As Object
    ' call symbol services default implementation of this method
    Const METHOD = "IJDUserSymbolServices_InstanciateDefinition:"
On Error GoTo Errx
    Set IJDUserSymbolServices_InstanciateDefinition = m_oSymbolHelper.InstanciateDefinition(CodeBase, defParameters, ActiveConnection)
    
    Exit Function

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
    Err.HelpFile, Err.HelpContext
End Function
Public Function IJDUserSymbolServices_GetDefinitionName(ByVal definitionParameters As Variant) As String
Const METHOD = "IJDUserSymbolServices_GetDefinitionName:"
  On Error GoTo Errx
      IJDUserSymbolServices_GetDefinitionName = m_oSymbolHelper.ProjectName + "." + m_oSymbolHelper.ClassName
    
    Exit Function

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
    Err.HelpFile, Err.HelpContext
End Function

Public Sub IJDUserSymbolServices_InitializeSymbolDefinition(ByRef pSymbolDefinition As IJDSymbolDefinition)
Const METHOD = "IJDUserSymbolServices_InitializeSymbolDefinition:"
On Error GoTo Errx
    m_oSymbolHelper.InitializeSymbolDefinition pSymbolDefinition
Exit Sub

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
    Err.HelpFile, Err.HelpContext
      
End Sub

Public Sub IJDUserSymbolServices_InvokeRepresentation(ByVal sblOcc As Object, _
                    ByVal repName As String, _
                    ByVal outputcoll As Object, _
                    ByRef arrayOfInputs())
Const METHOD = "IJDUserSymbolServices_InvokeRepresentation:"
On Error GoTo Errx
    m_oSymbolHelper.InvokeRepresentation sblOcc, repName, outputcoll, arrayOfInputs
        
Exit Sub

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
            Err.HelpFile, Err.HelpContext
End Sub

Public Function IJDUserSymbolServices_EditOccurence(ByRef pSymbolOccurence As Object, ByVal transactionMgr As Object) As Boolean
Const METHOD = "IJDUserSymbolServices_EditOccurence:"
On Error GoTo Errx
    ' The definition uses the generic EditOccurrence command
    IJDUserSymbolServices_EditOccurence = False
        Exit Function

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
            Err.HelpFile, Err.HelpContext

End Function




